// Created by Roman Novitsky on 25.05.2009


#region Imported Namespaces


using System;
using System.Runtime.InteropServices;
using System.Text;


#endregion


namespace WtfManager.WindowsNative.User32
{
  [ComImport]
  [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
  [Guid("000214e4-0000-0000-c000-000000000046")]
  public interface IContextMenu
  {
    // Adds commands to a shortcut menu


    #region Methods


    [PreserveSig]
    Int32 QueryContextMenu(IntPtr hmenu, uint iMenu, uint idCmdFirst, uint idCmdLast, CMF uFlags);


    // Carries out the command associated with a shortcut menu item
    [PreserveSig]
    Int32 InvokeCommand(ref CMINVOKECOMMANDINFOEX info);


    // Retrieves information about a shortcut menu command, 
    // including the help string and the language-independent, 
    // or canonical, name for the command
    [PreserveSig]
    Int32 GetCommandString(uint idcmd, GCS uflags, uint reserved, StringBuilder commandstring, int cch);


    #endregion
  }
}